[dahyeong-yun] WEEK 02 solutions#2684
Conversation
๐ dahyeong-yun ๋์ ํ์ต ํํฉ์ด๋ฒ ์ฃผ ์ ์ถ ๋ฌธ์
๋์ ํ์ต ์์ฝ
๋ฌธ์ ํ์ด ํํฉ
๐ค ์ด ๋๊ธ์ GitHub App์ ํตํด ์๋์ผ๋ก ์์ฑ๋์์ต๋๋ค. ๐ข API ์ฌ์ฉ๋ (gpt-5-nano)
|
There was a problem hiding this comment.
๐ท๏ธ ์๊ณ ๋ฆฌ์ฆ ํจํด ๋ถ์
- ํจํด: Two Pointers, Sorting
- ์ค๋ช : 3Sum์ ์ ๋ ฌ ํ ๊ณ ์ ๊ฐ์ ๋ํด ์ข์ฐ ํฌ์ธํฐ๋ฅผ ์ด๋์ํค๋ ํฌ ํฌ์ธํฐ ๊ธฐ๋ฒ์ผ๋ก ์ค๋ณต ์ ๊ฑฐ๋ฅผ ์ํํฉ๋๋ค. ์๊ฐ๋ณต์ก๋๋ O(n^2)์ด๋ฉฐ, ์ถ๊ฐ ๊ณต๊ฐ์ ์์์ ๊ฐ๊น์ต๋๋ค.
๐ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์
| ๋ณต์ก๋ | |
|---|---|
| Time | O(n^2) |
| Space | O(1) |
ํผ๋๋ฐฑ: ์ ๋ ฌ์ผ๋ก ์ค๋ณต์ ์ ๊ฑฐํ๊ณ ํฌ ํฌ์ธํฐ๋ก ์กฐํฉ์ ์ฐพ๋ ์ ํ์ ์ธ 3Sum ํด๋ฒ์ ๋๋ค.
๊ฐ์ ์ ์: ํ์ฌ ๊ตฌํ์ด ์ ์ ํด ๋ณด์ ๋๋ค.
๐ก ํ์ด์ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋๋ฅผ ์ฃผ์์ผ๋ก ๋จ๊ฒจ๋ณด์ธ์!
There was a problem hiding this comment.
๐ท๏ธ ์๊ณ ๋ฆฌ์ฆ ํจํด ๋ถ์
- ํจํด: Dynamic Programming
- ์ค๋ช : ํผ๋ณด๋์น ํํ๋ก ๊ฐ ๋จ๊ณ์ ๊ฒฝ์ฐ์ ์๋ฅผ ์ด์ ์ํ๋ค๋ก๋ถํฐ ํฉ์ฐํ๋ DP ๊ธฐ๋ฒ์ ์ฌ์ฉํฉ๋๋ค. ์ ํ์์ผ๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ , ๋ฐฐ์ด์ ์ฌ์ฉํด ๋ถ๋ถํด๋ฅผ ์ ์ฅํ๋ ์ต์ ํ ๊ฐ๋ฅ์ฑ๋ ์ดํดํ ์ ์์ต๋๋ค.
๐ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์
| ์ ์ ๋ถ์ | ์ค์ ๋ถ์ | ๊ฒฐ๊ณผ | |
|---|---|---|---|
| Time | O(n) | O(n) | โ |
| Space | O(n) | O(n) | โ |
ํผ๋๋ฐฑ: ์ ํ์ ์ธ DP ํ์ด๋ก ๊ฐ ๋จ๊ณ ์ด์ ๋ ๋จ๊ณ์ ํฉ์ผ๋ก ํ์ฌ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํฉ๋๋ค.
๊ฐ์ ์ ์: ๋ง์ฝ ๊ณต๊ฐ์ ๋ ์ ์ฝํ๊ณ ์ถ๋ค๋ฉด two-variable๋ก๋ง ํด๊ฒฐํ๋ ์ต์ ํ๋ ๊ฐ๋ฅํฉ๋๋ค.
There was a problem hiding this comment.
๐ท๏ธ ์๊ณ ๋ฆฌ์ฆ ํจํด ๋ถ์
- ํจํด: Two Pointers, Dynamic Programming, Hash Map / Hash Set
- ์ค๋ช : ํด๋น ์ฝ๋๋ ๋ ๋ฐฐ์ด(ํ๋ฆฌํฝ์ค/์ํฝ์ค) ๊ฐ๋ ์ผ๋ก ํ ๋ฐฐ์ด์ ๋ ๋ฒ ์ํํ๋ฉฐ ๊ณฑ์ ๋์ ๊ณ์ฐํ๋ ๋ฐฉ์์ด๋ค. ๋ ํฌ์ธํฐ ์ ์ฌํ ์งํ ํํ๋ก ์ผ์ชฝ/์ค๋ฅธ์ชฝ ๋์ ๊ณฑ์ ์ด์ฉํด ๊ฒฐ๊ณผ๋ฅผ ๊ตฌํ๋ ํจํด๊ณผ ๋ถ๋ถ ๋ฌธ์ ์ ๊ณฑ์ ๊ณฑ์ ์ผ๋ก ํฉ์ฑํ๋ ์์ด๋์ด๊ฐ ์ ์ฉ๋๋ค. ๋ํ ์ต์ ํ๋ ๊ณต๊ฐ ๋ณต์ก๋ ๋ฌ์ฑ์ ์ํ DP์ ๋์ ๊ฒฐ๊ณผ ์ ์ฅ ํํ๊ฐ ๋ณด์ธ๋ค.
๐ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์
| ์ ์ ๋ถ์ | ์ค์ ๋ถ์ | ๊ฒฐ๊ณผ | |
|---|---|---|---|
| Time | O(n) | O(n) | โ |
| Space | O(n) | O(1) | โ |
ํผ๋๋ฐฑ: ๊ณต๊ฐ์ ์ค์ด๋ฉด์ ๋ชจ๋ ์์์ ๊ณฑ์ ๊ตฌํ๋ ํ์ค ์๋ฃจ์ ์ด๋ฉฐ ๋ ํจ์ค ๋ฐฉ์์ด ํจ๊ณผ์ ์ ๋๋ค.
๊ฐ์ ์ ์: ๊ฐ๋จํ ๊ตฌํ์ด์ง๋ง ๋ณ์ ๋ช ์ ๋ ์ง๊ด์ ์ผ๋ก ๋ฐ๊ฟ ๊ฐ๋ ์ฑ์ ๋์ผ ์ ์์ต๋๋ค.
There was a problem hiding this comment.
๐ท๏ธ ์๊ณ ๋ฆฌ์ฆ ํจํด ๋ถ์
- ํจํด: Binary Search, Hash Map / Hash Set, Greedy, Divide and Conquer, Dynamic Programming, Two Pointers, Sliding Window, Fast & Slow Pointers, BFS, DFS, Backtracking, Union Find, Trie, Bit Manipulation, Heap / Priority Queue, Monotonic Stack
- ์ค๋ช : ์ฃผ์ด์ง ์ ๋ ฌ ๊ธฐ๋ฐ ๋น๊ต๋ก ์ ๋๊ทธ๋จ ์ฌ๋ถ๋ฅผ ํ๋จํ๋๋ฐ, ๋ฌธ์์ด์ ๋ฌธ์ ๋ฐฐ์ด๋ก ๋ณํ ํ ์ ๋ ฌํ๊ณ ๋น๊ตํ๋ค. ์ ๋ ฌ์ด ํต์ฌ ์ฐ์ฐ์ด๋ฉฐ, ์๊ฐ ๋ณต์ก๋๋ O(n log n)์ด๊ณ ์ถ๊ฐ ๊ณต๊ฐ์ O(n)์ด๋ค.
๐ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์
| ์ ์ ๋ถ์ | ์ค์ ๋ถ์ | ๊ฒฐ๊ณผ | |
|---|---|---|---|
| Time | O(n log n) | O(n log n) | โ |
| Space | O(n) | O(n) | โ |
ํผ๋๋ฐฑ: ๋ฌธ์์ด ๊ธธ์ด๊ฐ ์ปค๋ ๋น๊ต์ ๋จ์ํ๊ฒ ๊ตฌํ๋ ํด๋ฒ์ ๋๋ค.
๊ฐ์ ์ ์: ์ถ๊ฐ ์ต์ ํ๋ฅผ ์ํ๋ฉด ๋ฌธ์ ๋น๋ ์นด์ดํธ๋ฅผ ์ด์ฉํ O(n) ํ์ด๋ ๊ณ ๋ คํด๋ณผ ์ ์์ต๋๋ค.
There was a problem hiding this comment.
๐ท๏ธ ์๊ณ ๋ฆฌ์ฆ ํจํด ๋ถ์
- ํจํด: Hash Map / Hash Set, Sorting
- ์ค๋ช : ์ฃผ์ด์ง ํ์ด์์ ๋ ๋ฌธ์์ด์ ์ ๋๊ทธ๋จ ์ฌ๋ถ๋ฅผ ํ๋จํ๊ธฐ ์ํด ๋ฌธ์๋ฅผ ๋ฐฐ์ด๋ก ๋ง๋ค๊ณ ์ ๋ ฌํ ๋ค ๋น๊ตํฉ๋๋ค. ์ ๋ ฌ์ n log n ์๊ฐ, ์ถ๊ฐ ๊ณต๊ฐ์ ๋ฐฐ์ด ๋ณต์ ์ ์ํด O(n)๋ก ํ์ํ๋ฏ๋ก ํจํด์ ํด์ ๋งต/์ธํธ๋ณด๋จ ์ ๋ ฌ ๊ธฐ๋ฐ ์ ๊ทผ์ ํด๋นํฉ๋๋ค.
๐ ์๊ฐ/๊ณต๊ฐ ๋ณต์ก๋ ๋ถ์
| ์ ์ ๋ถ์ | ์ค์ ๋ถ์ | ๊ฒฐ๊ณผ | |
|---|---|---|---|
| Time | O(n log n) | O(n log n) | โ |
| Space | O(n) | O(n) | โ |
ํผ๋๋ฐฑ: ํ์ฌ ์ฝ๋๊ฐ ์๋ชป๋ ๋ฌธ์ ์ค๋ช ๊ณผ ํจ๊ป ๊ฐ์ ์ ๋๊ทธ๋จ ์ฝ๋๋ฅผ ๋ฐ๋ณตํ๊ณ ์์ต๋๋ค. BST ๊ฒ์ฌ ๊ตฌํ์ด ํ์ํฉ๋๋ค.
๊ฐ์ ์ ์: BST ๊ฒ์ฌ๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌํํ๊ณ , ์ค๋ณต ์ ๊ฑฐ์ ๊ฒฝ๊ณ ์กฐ๊ฑด์ ์ ๊ฒฝ ์จ์ ์์ฑํด ๋ณด์ธ์.
๋ต์ ์ ์ถ ๋ฌธ์
์์ฑ์ ์ฒดํฌ ๋ฆฌ์คํธ
In Review๋ก ์ค์ ํด์ฃผ์ธ์.๊ฒํ ์ ์ฒดํฌ ๋ฆฌ์คํธ
Important
๋ณธ์ธ ๋ต์ ์ ์ถ ๋ฟ๋ง ์๋๋ผ ๋ค๋ฅธ ๋ถ PR ํ๋ ์ด์์ ๋ฐ๋์ ๊ฒํ ๋ฅผ ํด์ฃผ์ ์ผ ํฉ๋๋ค!